package com.lin.controller;

import com.lin.pojo.DFile;
import com.lin.pojo.PageVo;
import com.lin.service.DFileService;
import com.lin.utils.CreateNumber;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Map;

@RestController
public class DFileController {
    @Autowired
    DFileService dFileService;

    @Autowired
    CreateNumber createNumber;
    @GetMapping("/dfile.action")
    //分页
    public PageVo<DFile> queryAlldfile(DFile dFile,
                                     @RequestParam(value = "pageno",defaultValue = "1") Integer pageno,
                                     @RequestParam(value = "pagesize",defaultValue = "8") Integer pagesize){

        return dFileService.queryallbycond(dFile,pageno,pagesize);
    }

    //根据id查询
    @GetMapping("/dfilebyid.action")
    public DFile queryDFilebyid(DFile dFile){

        return dFileService.queryDFilebyid(dFile.getId());
    }
    //再次根据id查询以防数据重叠
    @GetMapping("/dfilebyid02.action")
    public DFile queryDFilebyid02(DFile dFile){
        System.out.println(dFile);
        return dFileService.queryDFilebyid(dFile.getId());
    }

    //再次根据id查询以防数据重叠
    @GetMapping("/dfilebyid03.action")
    public DFile dfilebyid03(DFile dFile){
        System.out.println(dFile);
        return dFileService.queryDFilebyid(dFile.getId());
    }

    //修改
    @PutMapping("/updfile.action")
    public Map upDFile(@RequestBody DFile dFile){
        return dFileService.upDFile(dFile);
    }

    //添加
    @PostMapping("/addbydfile.action")
    public Map addbydfile(DFile dFile){
        System.out.println(dFile);
        dFile.setProductId(createNumber.getproductid(dFile));
        dFile.setChangeTag("D002-0");
        dFile.setPriceChangeTag("J001-0");
        dFile.setDeleteTag("C001-0");
        dFile.setDesignModuleTag("W001-0");
        dFile.setDesignProcedureTag("G001-0");
        dFile.setDesignCellTag("K001-0");
        Double price=dFile.getCostPrice();
        dFile.setRealCostPrice(price);
        System.out.println(dFile);
        Map map=dFileService.addbydfile(dFile);
        return map;
    }
    //分页查询
    @GetMapping("/querybyAlldfile.action")
    public PageVo<DFile> querybyAlldfile(DFile dFile,
                                       @RequestParam(value = "pagenum",defaultValue = "1") Integer pageno,
                                       @RequestParam(value = "pagesize",defaultValue = "5") Integer pagesize){

        return dFileService.querybyAlldfile(dFile,pageno,pagesize);
    }
    //分页查询
    @GetMapping("/querybyAlldfile02.action")
    public PageVo<DFile> querybyAlldfile02(DFile dFile,
                                         @RequestParam(value = "pagenum",defaultValue = "1") Integer pageno,
                                         @RequestParam(value = "pagesize",defaultValue = "5") Integer pagesize){

        return dFileService.querybyAlldfile02(dFile,pageno,pagesize);
    }
    @GetMapping("/querybyAlldfilewangyingliang.action")
    public PageVo<DFile> querybyAlldfilewangyingliang(DFile dFile,
                                           @RequestParam(value = "pageno",defaultValue = "1") Integer pageno,
                                           @RequestParam(value = "pagesize",defaultValue = "5") Integer pagesize){

        return dFileService.querybyAlldfilewangyingliang(dFile,pageno,pagesize);
    }

    //修改
    @RequestMapping("/updatebyDFile.action")
    public Map updatebyDFile(DFile dFile){
        System.out.println(dFile);
        dFile.setCheckTag("S001-1");

        return dFileService.updatebyDFile(dFile);
    }
    //第二次修改
    @RequestMapping("/updatebyDFile01.action")
    public Map updatebyDFile01(DFile dFile){
        //System.out.println(dFile.getFileChangeAmount());
        if (null==dFile.getFileChangeAmount()){
            dFile.setFileChangeAmount(0);
        }
            Integer num01=dFile.getFileChangeAmount();
            num01=num01+1;
            dFile.setFileChangeAmount(num01);
            dFile.setChangeTag("D002-1");
            dFile.setCheckTag("S001-0");
        return dFileService.updatebyDFile02(dFile);
    }

    //假删除
    @RequestMapping("/deleDFile.action")
    public Map deleDFile(DFile dFile){

        return dFileService.deleDFile(dFile);
    }
    @RequestMapping("/deleDFile02.action")
    public Map deleDFile02(DFile dFile){

        return dFileService.deleDFile(dFile);
    }

    //真正删除
    @RequestMapping("/dele.action")
    public Map dele(DFile dFile){

        return dFileService.dele(dFile);
    }

    @RequestMapping("/queryfifstkindname.action")
    public List<DFile> queryfifstkindname() {
        return  dFileService.queryfifstkindname();
    }
    @GetMapping("/queryDFileulbyid.action/{id}")
    public DFile queryDFileulbyid(@PathVariable int id) {
        return dFileService.queryDFileulbyid(id);
    }

    @GetMapping("/dfilemod.action")
    //分页
    public PageVo<DFile> querydfilemod(DFile dFile,
                                       @RequestParam(value = "pageno",defaultValue = "1") Integer pageno,
                                       @RequestParam(value = "pagesize",defaultValue = "7") Integer pagesize){

        return dFileService.queryallbycond(dFile,pageno,pagesize);
    }

}
